腾讯PCG 客户端 一二三面经

-------------------------------------------------------------------------
5.21一面，之前一直在复习八股文赶紧自己看的差不多了，结果面试官问起来才觉得好多不会或者说不清楚，还要多加学习 

-操作系统 
1.多线程和多进程区别 
2.虚拟内存技术 
3.页面置换算法 
4.线程如何保证安全 
5.多线程同时对同一块内存操作一定会崩溃吗 
6.32位能分配的内存大小 
7.栈什么时候溢出 
8.用户态和内核态区别，为什么要分 
9.源码到执行文件的过程 
10.静态库和动态库 

-计算机网络 
1.网络五层模型和分别的协议有哪些 
2.TCP流量控制和拥塞控制的作用 
3.TCP报头和和IP报头格式 
4.http1.0 2.0区别 
5.http 和https的区别 
6.http传输层协议是什么 
7.为什么使用tcp 
8.对称加密，非对称加密 
9.混合加密的应用场景 
10.http和https连接时有多少个rtt 
11.断点续传如何实现的 

-C++ 
1.右值引用和左值引用 
2.智能指针 
3.share_ptr底层如何构造 
4.移动构造函数 
5.听说过move吗 
6.内联函数什么时候展开 
7.new和malloc的区别 
8.map底层实现 
9.为什么用红黑树 
10.哈希冲突怎么解决 

-------------------------------------------------------------------
5.31更新二面
项目相关被问的很多回答不是很好 

1.线程和进程区别 
2.线程实现并发（CPU资源相关） 面试官想问的是单核和多核的cpu怎么处理多线程并发的，没回答到点上，听成进程就说成虚拟内存那些东西了。。 
3.TCP和UDP区别 
4.具体应用 

算法：一个碟子上有很多层乱序排列大小不一的蛋糕，只用一只手从顶端去拿任意块的蛋糕，并且能把蛋糕翻转过来再放进去，只能把拿出来的整体颠倒，使排序后的蛋糕成金字塔型（每次从头翻转数组的一部分排序数组） 

--------------------------------------------------------------------
6.9更新三面
以为凉了结果突然收到了电话面通知，时间很短，大概面了半个小时

1.自我介绍 
2.项目相关 
3.介绍一下struct结构体 
4.内存对齐 
5.为什么要对齐 
6.怎么判断大端小端 
7.extern C，哪些情况有用到这个 
8.数据结构堆是什么 
9.口述层序遍历二叉树
